From b323252c14c9f3cb579affcf818e02774deede73 Mon Sep 17 00:00:00 2001 From: Carlos Garnacho Date: Mon, 21 Sep 2015 15:09:32 +0200 Subject: [PATCH] widget: Make sure we only run controllers on realized widgets The default event bubbling paths are prone to just running event controllers even after the widget was potentially unrealized/destroyed in an event handler callback, so bail out early if that's the case. https://bugzilla.gnome.org/show_bug.cgi?id=755352 --- gtk/gtkwidget.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c index ffd6b99bbd..2ec9c04fc0 100644 --- a/gtk/gtkwidget.c +++ b/gtk/gtkwidget.c @@ -7309,6 +7309,9 @@ _gtk_widget_run_controllers (GtkWidget *widget, { GList *next = l->next; + if (!WIDGET_REALIZED_FOR_EVENT (widget, event)) + break; + data = l->data; if (data->controller == NULL) -- 2.30.2